Methods of interfacing with multi-point input devices and multi-point input systems employing interfacing techniques

ABSTRACT

Methods and systems for interfacing with multi-point input devices employ various techniques for controlling displayed images, including 2D and 3D image translation, scale/zoom, rotation control and globe axis tilt control. Various techniques employ three or more simultaneous inputs, changes in characteristics of those inputs, and pressure sensing, among other things.

REFERENCE TO RELATED APPLICATION

This application claims priority to U.S. Provisional Patent ApplicationNo. 60/887,489, filed Jan. 31, 2007, the disclosure of which isincorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to methods of interfacing with multi-pointinput devices, and multi-point input systems that employ interfacetechniques.

2. Description of the Related Art

So-called touch screen displays are well known and common in manyindustrial applications. As an example, most bank ATMs use touch screendisplays. As the utility of these types of displays increases, displayswithin home and business, including televisions and computer monitors,are increasingly becoming touch sensitive.

Recently, multi-touch input devices are becoming more available forvarious uses due to advancements in relevant touch sensing technologies,reductions in cost, and other factors. Multi-touch input devices, bydefinition, are capable of detecting multiple inputs simultaneously.U.S. patent application Ser. No. 11/833,908 to Han, filed Aug. 3, 2007,U.S. Patent Application No. 60/821,325 to Han, filed Aug. 3, 2006, andU.S. Patent Application No. 60/953,966 to Han, filed Aug. 3, 2007, allassigned to the assignee of the present invention, identify varioustechnologies and publications within the field, and further describeadditional advancements in multi-touch sensing through frustrated totalinternal reflection. U.S. patent application Ser. Nos. 11/833,908,60/821,325 and 60/953,966 are incorporated fully herein by reference.

Interface control technology, including interfacing techniques, has beenwidely studied. The following publications explore various concepts,methodologies and techniques in this area: Buxton, W., Hill, R., andRowley, P., “Issues and Techniques in Touch-Sensitive Tablet Input,”Proceedings of the 12th Annual Conference on Computer Graphics andInteractive Techniques SIGGRAPH '85, ACM Press, New York, N.Y., 215-224(1985); Michael Chen, “A Study in Interactive 3-D Rotation Using 2-DControl Devices,” Computer Graphics, Vol. 22, No. 4, 121-129 (1988); K.Shoemake, “ARCBALL: A User Interface for Specifying Three-DimensionalOrientation Using a Mouse,” Proceedings of the conference on Graphicsinterface '92, 151-156 (1992); Ken Hinckley, “Haptic Issues for VirtualManipulation,” A Dissertation Presented to the Faculty of the School ofEngineering and Applied Science at the University of Virginia, section6.1-6.3 (1996), from the websitehttp://research.microsoft.com/Users/kenh/thesis/front.htm; Dietz, P. andLeigh, D., “DiamondTouch: A Multi-User Touch Technology,” Proceedings ofthe 14th Annual ACM Symposium on User Interface Software and Technology(Orlando, Fla., Nov. 11-14, 2001), UIST '01. ACM Press, New York, N.Y.,219-226 (2001); Lee, S., Buxton, W. and Smith, K. C., “A Multi-TouchThree Dimensional Touch-Sensitive Tablet,” Proceedings of the SIGCHIConference on Human Factors in Computing Systems (San Francisco, Calif.,United States), CHI '85. ACM Press, New York, N.Y., 21-25 (1985); Malik,S. and Laszlo, J., “Visual Touchpad: A Two-Handed Gestural InputDevice,” Proceedings of the 6th International Conference on MultimodalInterfaces (State College, Pa., USA, Oct. 13-15, 2004), ICMI '04. ACMPress, New York, N.Y., 289-296 (2004); Rekimoto, J., “SmartSkin: AnInfrastructure for Freehand Manipulation on Interactive Surfaces,”Proceedings of the SIGCHI Conference on Human Factors in ComputingSystems, CHI '02, ACM Press, New York, N.Y., 113-120 (2002); Westerman,W., Elias, J. G., and Hedge, A., “Multi-Touch: A New Tactile 2-D GestureInterface for Human-Computer Interaction,” Proceedings of the HumanFactors and Ergonomics Society 45th Annual Meeting (Minneapolis/St.Paul, Minn., October 2001), 632-636 (2001); Wilson, A. D., “TouchLight:An Imaging Touch Screen and Display for Gesture-Based Interaction,”Proceedings of the 6th International Conference on Multimodal Interfaces(State College, Pa., USA, Oct. 13-15, 2004), ICMI '04. ACM Press, NewYork, N.Y., 69-76 (2004); and Wu, M. and Balakrishnan, R., “Multi-Fingerand Whole Hand Gestural Interaction Techniques for Multi-User TabletopDisplays,” Proceedings of the 16th Annual ACM Symposium on UserInterface Software and Technology (Vancouver, Canada, Nov. 2-05, 2003),UIST '03, ACM Press, New York, N.Y., 193-202 (2003), each of which isincorporated herein by reference.

Various publications explore two-handed input. These include: R.Balakrishnan and K. Hinckley, “Symmetric bimanual interaction,” CHI '00:Proceedings of the SIGCHI conference on Human factors in computingsystems, 33-40 (2000); R. Balakrishnan and G. Kurtenbach, “Exploringbimanual camera control and object manipulation in 3D graphicsinterfaces,” CHI '99: Proceedings of the SIGCHI conference on Humanfactors in computing systems, 56-63 (1999); Y. Guiard, “Asymmetricdivision of labor in human skilled bimanual action: The kinetic chain asa model,” Journal of Motor Behavior, 19(4):486-517 (1987); K. Hinckley,R. Pausch, J. C. Goble, and N. F. Kassell, “Passive real-world interfaceprops for neurosurgical visualization,” CHI '94: Proceedings of theSIGCHI conference on Human factors in computing systems, 452-458 (1994);G. Kurtenbach, G. Fitzmaurice, T. Baudel, and B. Buxton, “The design ofa GUI paradigm based on Tablets, Two-hands, and Transparency,” CHI '97:Proceedings of the SIGCHI conference on Human factors in computingsystems, 35-42 (1997); I. Llamas, B. Kim, J. Gargus, J. Rossignac, andC. D. Shaw, “Twister: a space-warp operator for the two-handed editingof 3D shapes,” ACM Transactions on Graphics, 22(3):663-668 (2003); andR. Zeleznik, A. Forsberg, and P. Strauss, “Two pointer input for 3Dinteraction,” SI3D '97: Proceedings of the 1997 symposium on Interactive3D graphics, 115-120 (1997). Each of these publications is incorporatedherein by reference.

Other patent publications in this field include U.S. Patent PublicationNos. 2006/0026521, 2006/0026535, 2006/0053387, 2006/0085757,2006/0033724, 2006/0161870, 2006/0161871, and 2006/0026535, each ofwhich is incorporated herein by reference.

SUMMARY OF THE INVENTION

Human interface techniques that take full advantage of the multi-inputcapability of multi-input sensing technology need to be developed. It istherefore a general object of the present invention to provide methodsand systems for facilitating human interfacing with multi-inputtechnology, such as multi-touch tablets and multi-touch display devices.More specific objects of the present invention are discussed in thedetailed description section provided below.

In accordance with the present invention, a method of interfacing with amulti-point input device comprises displaying an image on a displaydevice, detecting positions of first and second elements simultaneouslycontacting the display device, identifying a rotation axis in accordancewith the positions of the first and second elements, detecting a thirdelement contacting the display device simultaneously with the contactingof the display device by the first and second elements, and controlling,after detecting the third element, a rotation of the image displayed onthe display device about the rotation axis.

As an aspect of the present invention, detecting the third elementcontacting the display device occurs after the first and second elementsare detected.

As a further aspect, identifying a rotation axis comprises identifying arotation axis extending through the positions of the first and secondelements parallel to the display plane.

As another aspect, controlling a rotation of the image comprisescontrolling an amount of rotation as a function of the amount of timethe third element is detected.

As an additional aspect, controlling a rotation of the image comprisescontrolling, after detecting the third element within a control area, arotation of the image displayed on the display device, the control areabeing defined by positions of the first and second elements.

As yet a further aspect, controlling a rotation of the image comprisescontrolling a rotation of the image at a constant rate while the thirdelement is detected.

As yet another aspect, controlling a rotation of the image comprisescontrolling a rotation of the image at a progressively increasing ratewhile the third element is continuously detected.

As yet an additional aspect, controlling a rotation of the imagecomprises controlling a rotation of the image in a direction that is afunction of a position of the third element.

As still yet a further aspect, controlling a rotation of the imagecomprises controlling a rotation of the image in a first direction whenthe third element is disposed on a first side of an axis passing throughthe first and second elements, and controlling the rotation of the imagein a second direction opposite the first direction when the thirdelement is disposed on a second side opposite the first side of the axispassing through the first and second elements.

As still yet another aspect, the method further comprises detecting afourth element contacting the display device simultaneously with thecontacting of the display device by the first, second and thirdelements, and controlling a rotation of the image displayed on thedisplay device comprises controlling, after detecting the third element,a rotation of the image in a direction corresponding to a position ofthe fourth element.

As still yet an additional aspect, the method further comprisesidentifying an amount of pressure exerted by the third element on thedisplay device, and controlling a rotation of the image comprisescontrolling a rotation of the image in accordance with the amount ofpressure exerted by the third element.

As still yet a further aspect, controlling a rotation of the imagecomprises controlling a rotation of the image in accordance with anamount of movement of the third element while contacting the displaydevice.

As a feature of this aspect, controlling a rotation of the imagecomprises controlling a direction (i.e. clockwise or counterclockwise)and rate of rotation of the image as a function of a direction andlength of movement of the third element while contacting the displaydevice.

In accordance with another embodiment of the present invention, a methodof interfacing with a multi-point input device comprises the steps ofdisplaying an image on a display device, detecting positions of firstand second elements simultaneously contacting the contact surface of themulti-point input device, identifying a rotation axis of the image inaccordance with the positions of the first and second elements,detecting a third element contacting the contact surface of themulti-point input device simultaneously with the contacting of thecontact surface by the first and second elements, and controlling, afterdetecting the third element, a rotation of the image displayed on thedisplay device about the rotation axis.

In accordance with a further embodiment of the present invention, amulti-point input system comprises a display device for displaying animage, the display device adapted to detect positions of first andsecond elements simultaneously contacting the display device and todetect a third element contacting the display device simultaneously withthe contacting of the display device by the first and second elements,and a controller for identifying a rotation axis in accordance with thepositions of the first and second elements, and controlling, after thethird element is detected, a rotation of the image displayed on thedisplay device about the rotation axis.

In accordance with yet another embodiment of the present invention, amulti-point input system comprises a display device for displaying animage, a multi-point input device having a contact surface, themulti-point input device adapted to detect positions of first and secondelements simultaneously contacting the contact surface and to detect athird element contacting the contact surface simultaneously with thecontacting of the contact surface by the first and second elements, anda controller for identifying a rotation axis of the image in accordancewith the positions of the first and second elements, and controlling,after the third element is detected, a rotation of the image displayedby the display device about the rotation axis.

As various aspects of these additional embodiments, the features andaspects previously mentioned with respect to the previously summarizedmethod of interfacing in accordance with the present invention alsorepresent features and aspects of such embodiments of the presentinvention.

In accordance with an additional embodiment of the present invention, amethod of interfacing with a multi-point input device comprisesdisplaying an image on a display device, the image representing athree-dimensional graphical representation of a globe, detectingpositions and movements of first and second elements simultaneouslycontacting the display device, controlling a change in the imagecorresponding to a change in a view of the globe resulting from a changein at least one of latitude, longitude, range and azimuth of the view inaccordance with the detected movements of the first and second elementssimultaneously contacting the display device, detecting a position andmovement of a third element contacting the display device simultaneouslywith the contacting of the display device by the first and secondelements, and controlling a change in the image corresponding to achange in a tilt of the globe in accordance with the detected movementof the third element contacting the display device.

As an aspect of this embodiment, controlling a change in the imagecorresponding to a change in a view of the globe comprises controlling achange in the image corresponding to changes in all of latitude,longitude, range and azimuth in accordance with the detected movementsof the first and second elements simultaneously contacting the displaydevice.

As a feature of this aspect, controlling a change in the imagecorresponding to a change in a tilt of the globe is carried outsimultaneously with the change in the image corresponding to changes inall of the latitude, longitude, range and azimuth of the globe.

As another aspect, controlling a change in the image corresponding to achange in a tilt of the globe comprises controlling a change in theimage corresponding to a change in a tilt of the globe at a tilt anglethat is a function of a vertical distance moved by the third elementwhile contacting the display device.

As an additional aspect, controlling a change in the image correspondingto a change in a tilt of the globe comprises controlling a change in theimage corresponding to a change in a tilt of the globe at a rate ofrotation that is a function of a distance moved by the third elementwhile contacting the display device.

As yet a further aspect, controlling a change in the image correspondingto a change in a tilt of the globe is carried out only if an initialposition of the third element contacting the display device is at leasta predetermined distance away from the positions of the first and secondelements.

In accordance with a further embodiment of the present invention, amethod of interfacing with a multi-point input device comprises thesteps of displaying an image on a display device, the image representinga three-dimensional graphical representation of a globe, detectingpositions and movements of first and second elements simultaneouslycontacting a contact surface of a multi-point input device, controllinga change in the image displayed on the display device corresponding to achange in a view of the globe resulting from a change in at least one oflatitude, longitude, range and azimuth of the view in accordance withthe detected movements of the first and second elements simultaneouslycontacting the contact surface of the multi-point input device,detecting a position and movement of a third element contacting thecontact surface of the multi-point input device simultaneously with thecontacting of the contact surface by the first and second elements, andcontrolling a change in the image displayed on the display devicecorresponding to a change in a tilt of the globe in accordance with thedetected movement of the third element contacting the contact surface.

In accordance with an additional embodiment of the present invention, amulti-point input system comprises a display device for displaying animage representing a three-dimensional graphical representation of aglobe, and a controller for detecting positions and movements of firstand second elements simultaneously contacting the display device,controlling a change in the image corresponding to a change in a view ofthe globe resulting from a change in at least one of latitude,longitude, range and azimuth of the view in accordance with the detectedmovements of the first and second elements simultaneously contacting thedisplay device, detecting a position and movement of a third elementcontacting the display device simultaneously with the contacting of thedisplay device by the first and second elements, and controlling achange in the image corresponding to a change in a tilt of the globe inaccordance with the detected movement of the third element contactingthe display device.

In accordance with yet a further embodiment of the present invention, amulti-point input system comprises a display device for displaying animage representing a three-dimensional graphical representation of aglobe, a multi-point input device having a contact surface, themulti-point input device adapted to detect positions and movements offirst, second and third elements simultaneously contacting the contactsurface, and a controller for controlling a change in the imagedisplayed by the display device corresponding to a change in a view ofthe globe resulting from a change in at least one of latitude,longitude, range and azimuth of the view in accordance with the detectedmovements of the first and second elements simultaneously contacting thecontact surface of the multi-point input device, and for controlling achange in the image displayed by the display device corresponding to achange in a tilt of the globe in accordance with the detected movementof the third element contacting the contact surface of the multi-pointinput device.

As various aspects of these embodiments of the present invention, thefeatures and aspects previously mentioned with respect to the previouslysummarized method of interfacing in accordance with the presentinvention also represent features and aspects of such embodiments.

In accordance with yet another embodiment of the present invention, amethod of interfacing with a multi-point input device comprisesdisplaying an image on a display device representing a three-dimensionalgraphical representation of a globe, detecting positions of first andsecond elements simultaneously contacting the display device,identifying a virtual axis in accordance with the positions of the firstand second elements, detecting a third element contacting the displaydevice simultaneously with the contacting of the display device by thefirst and second elements, and controlling, after detecting the thirdelement, a tilt adjustment of the globe represented by the imagedisplayed on the display device in accordance with the virtual axis andthe position of the third element.

As an aspect of this embodiment, controlling a tilt adjustment comprisescontrolling a magnitude of tilt adjustment of the globe represented bythe image displayed on the display device as a function of a distancebetween the position of the third element and the virtual axis.

As a further aspect, controlling a tilt adjustment comprises controllinga direction of tilt adjustment of the globe represented by the imagedisplayed on the display device in a first direction when the thirdelement is disposed on a first side of the virtual axis and in a seconddirection opposite the first direction when the third element isdisposed on a second side of the virtual axis opposite the first side.

As another aspect, the method further comprises ascertaining an amountof pressure exerted by the third element on the display device, andcontrolling a tilt adjustment comprises controlling a tilt adjustment ofthe globe represented by the image displayed on the display device inaccordance with the ascertained amount of pressure exerted by the thirdelement.

In accordance with still yet a further embodiment of the presentinvention, a method of interfacing with a multi-point input devicecomprises the steps of displaying an image on a display device, theimage representing a three-dimensional graphical representation of aglobe, detecting positions of first and second elements simultaneouslycontacting a contact surface of a multi-point input device, identifyinga virtual axis in accordance with the positions of the first and secondelements on the contact surface of the multi-point input device,detecting a third element contacting the contact surface of themulti-point input device simultaneously with the contacting of thecontact surface by the first and second elements, and controlling, afterdetecting the third element, a tilt adjustment of the globe representedby the image displayed on the display device in accordance with thevirtual axis and the position of the third element on the contactsurface of the multi-point input device.

In accordance with still yet another embodiment of the presentinvention, a multi-point input system comprises a display device fordisplaying an image representing a three-dimensional graphicalrepresentation of a globe, and a controller for detecting positions offirst and second elements simultaneously contacting the display device,identifying a virtual axis in accordance with the positions of the firstand second elements, detecting a third element contacting the displaydevice simultaneously with the contacting of the display device by thefirst and second elements, and controlling, after detecting the thirdelement, a tilt adjustment of the globe represented by the imagedisplayed on the display device in accordance with the virtual axis andthe position of the third element.

In accordance with still yet an additional embodiment of the presentinvention, a multi-point input system comprises a display device fordisplaying an image representing a three-dimensional graphicalrepresentation of a globe, a multi-point input device having a contactsurface, the multi-point input device adapted to detect positions offirst, second and third elements simultaneously contacting the contactsurface, and a controller for identifying a virtual axis in accordancewith the positions of the first and second elements on the contactsurface of the multi-point input device; and controlling, after thethird element is detected, a tilt adjustment of the globe represented bythe image displayed on the display device in accordance with the virtualaxis and the position of the third element on the contact surface of themulti-point input device.

As various aspects of these particular embodiments of the presentinvention, the features and aspects previously mentioned with respect tothe previously summarized method of interfacing also represent featuresand aspects of such embodiments.

Various other objects, advantages and features of the present inventionwill become readily apparent to those of ordinary skill in the art, andthe novel features will be particularly pointed out in the appendedclaims.

BRIEF DESCRIPTION OF THE DRAWINGS

The following detailed description, given by way of example and notintended to limit the present invention solely thereto, will best beappreciated in conjunction with the accompanying drawings, wherein likereference numerals denote like elements and parts, in which:

FIGS. 1A and 1B are schematic illustrations useful in describingmulti-point input techniques;

FIGS. 2A, 2B, 2C and 2D are schematic illustrations useful in describingvarious user interface techniques employing five inputs (e.g., fingers)simultaneously in accordance with the present invention;

FIGS. 3A and 3B schematically illustrate techniques for implementingrotation in accordance with an embodiment of the present invention;

FIGS. 4A and 4B schematically illustrate techniques for 3D objectmovement/scaling/rotation in accordance with further embodiments of thepresent invention;

FIG. 5 schematically illustrates techniques for controlling a displayedglobe, including tilt control, in accordance with yet another embodimentof the present invention;

FIGS. 6A and 6B schematically illustrate techniques for controllingglobe tilt in accordance with yet a further embodiment of the presentinvention; and

FIG. 7 is a block diagram of a system including a display device and acontroller for carrying out the various techniques of the presentinvention.

DETAILED DESCRIPTION OF THE PRESENT INVENTION

The present invention pertains to techniques for interfacing withmulti-point input devices, including multi-point input displays,multi-touch displays/screens, multi-point input capable touch tablets(e.g., without a display integrated), multi-point input devices thatreceive inputs via a human finger, a stylus or other mechanical,electro-mechanic, magnetic, etc., device, and any other device orapparatus capable of sensing simultaneous multiple inputs. As usedherein, the contacting object, whether it is a human finger or stylus orother device, also is referred to herein (primarily in the claims) as an“element.” The multi-point input displays/screens may be in the form ofa computer monitor, a television, a telephone display, etc. As usedherein, the terms “multi-point input device” or “multi-touch device” or“multi-point device” or the like (or, for convenience herein, “inputdevice”) shall refer to any of the above-mentioned devices.

Generalized 2D Object Movement/Scaling/Rotation Control

Referring first to FIGS. 1A and 1B of the drawings, two inputs A and Bare schematically shown. Inputs A and B are contact points by, forexample, the fingers of a user's hand 10, on a multi-point input device,such as multi-point input touch-sensitive display 12. For example,inputs A and B may correspond to a user's thumb and index finger,respectively. As another example, inputs A and B correspond to a user'sindex finger from each hand. Other finger combinations, from one ormultiple hands, may be employed. Further, and as discussed below, adifferent number of fingers (e.g., 3 fingers, 4 fingers, 5 fingers) maybe employed.

As is known, such as disclosed in G. Kurtenbach, G. Fitzmaurice, T.Baudel, and B. Buxton, “The design of a GUI paradigm based on Tablets,Two-hands, and Transparency,” CHI '97: Proceedings of the SIGCHIconference on Human factors in computing systems, 35-42 (1997), citedabove, and incorporated herein by reference, two input points may beutilized to effect the 2D position, uniform scaling, and 2D rotation ofa 2D object on a display in a straightforward 4 degree-of-freedom(“DOF”) operation. This also is known as pan-zoom-rotate, or “PZR,” aterm generally used when the camera is implied to be being manipulatedrather than the object (though there is no functional difference). Here,two 2D points specify the 4-DOF exactly. The operation may be eitherbased on a change from the initial positions of the points (i.e. whenfirst contacting the surface), or based incrementally based on thechanges in successive readings of the sensor.

Referring to FIG. 2A, five inputs A, B, C, D and E are schematicallyshown. In accordance with the present invention, the PZR can begeneralized to control the same 4 degrees of freedom (2D translation,scaling, rotation) when more than two (i.e. N>2) inputs (e.g., touchpoints) are used. For example, translation can become generalized to themotion of the centroid of the positions of all N points. As anotherexample, scale can be generalized by averaging the ratios in distancesfrom each input to the centroid or, alternatively, be based on an areadefined by the inputs (e.g., where the inputs represent the corners of apolygon). As a further example, rotation can be generalized by averagingthe changes in angle each input has with the centroid. Accordingly, sucha variant is referred to herein as “N-point-PZR” control.

In a more mathematically-based approach, each 2D input point on theobject can be considered a geometric position constraint, and a numericoptimizer solves (at interactive rates) for the object's 4 orientationparameters to match the new positions of the touch points, whileminimizing some error metric in the case it is overdetermined. Forexample, this can be setup as a system of linear equations, and solvedwith a method such as SVD.

3D Object Movement/Scaling/Rotation Control

Three-dimensional (3D) object movement/scaling/rotation control inaccordance with the present invention entails use of one or more inputsto a multi-point input device to effectuate movement/scaling/rotation ofa 3D object or scene that is displayed on a display device. The displaydevice may or may not be the multi-point input device receiving theinputs. As an example, if the multi-point input device is a multi-touchdisplay, then a 3D object or scene displayed on the multi-touch devicemay be controlled, as described herein, by one or more finger contactswith that device. For convenience, references to a “3D object” shallinclude either a displayed 3D object or a displayed 3D scene, unlessotherwise stated herein. And for convenience, the X/Y axes of the 3Dspace typically lay within the display screen plane, unless otherwisestated herein.

In accordance with the present invention, a user controls variousmovements of a displayed 3D object (or scene) using one or more inputs.As set forth in the various embodiment and variations described herein,the position (along the x, y and z axes), scale (size) and/ororientation of a 3D object is controlled through the user'splacement/movement/pressure of one or more inputs to (e.g., fingers on)the input device (e.g., multi-point input touch screen).

The user can effect a standard “trackball” (i.e. “arcball” or “virtualsphere”)-style rotation by placing and moving a single input point onthe 3D object. Alternatively, the single input point can be used tocontrol vertical/horizontal movement (i.e. panning) of the 3D objectinstead.

The use of multiple (2 or more) input points simultaneously by the userallows for additional 3D control operations to be performed at once.

The user controls vertical/horizontal movement (i.e., panning) of the 3Dobject by vertically/horizontally moving some of the inputs (e.g.,fingers). The precise location of the 3D object along the X/Y plane maybe implemented in various manners. In one version, motion of thecentroid of all the inputs (such as the exemplary downward motion shownin FIG. 2B) controls movement of the centroid of the 3D object along theX/Y plane (translation).

The user controls the scale of the 3D object (i.e., zooming) bymodifying the relative size/area of the inputs. For example, the 3Dobject's scale may be a function of the average of the distances of eachinput to the centroid or be a function of the area of the convex hull ofthe points defined by the inputs. FIG. 2C schematically illustratesmoving the inputs in an outward direction (stretching the fingers). Fora hand contacting a multi-point input touch screen with multiplefingers, stretching the fingers corresponds to increasing the scale ofthe 3D object, whereas bringing the fingers together causes a decreasein scale.

In a variation, rather than changing object scale, moving out(stretching) and moving in the inputs controls the position of the 3Dobject along the Z axis. Thus, the 3D object's position along the X, Yand Z axes may be controlled in the manner described herein. Asunderstood herein, various other techniques described herein forchanging scale may be modified to control Z-position. Conversely, othertechniques described herein for controlling/changing Z-position may bemodified to control scale.

FIG. 2D schematically illustrates user rotation, in the clockwise orcounter-clockwise direction, of the inputs to control rotation of the 3Dobject about the Z axis (i.e. within the X-Y plane). For example,rotation of the 3D object may be a function of the average of thechanges in the angle each input has with the centroid.

Referring next to FIG. 3A, which shows three inputs A, B and C, rotationof the 3D object about an axis “r” embedded in the view (i.e. X-Y) plane(i.e., the display surface) is carried out by the user exertingadditional pressure at one or more of the inputs. As an example, theuser may exert additional pressure at input A (e.g., by the thumb) tocause the 3D object to rotate in one direction about axis r, or mayexert additional pressure at inputs B and C (e.g., by the index andmiddle fingers) to cause the object to rotate in the opposite directionabout axis r.

Preferably, the multi-point input device is a pressure sensitive typedevice capable of ascertaining changes in pressure and/or measuring trueforce. High resolution multi-touch sensing devices, with or without trueforce sensitivity, also can derive similar force-like data by evaluatingeach contact area, which may increase with force due to the pliabilityof the human finger. Such evaluation can be carried out using anysuitable technique (sometimes called Simulated Pressure techniques). Oneexample of a suitable technique is discussed in the publication H.Benko, et al., “Precise Selection Techniques for Multi-Touch Screens,”Conference on Human Factors in Computing Systems, Proceedings of theSIGCHI conference on Human Factors in computing systems, 1263-1272(2006), which is incorporated herein by reference. For purposes herein,pressure detection, pressure measurement and the like shall includetechniques that derive force-like data.

Referring to FIG. 3B, one manner of calculating the amount of rotationincludes interpreting pressure as “depth” below the input surface,resulting in a set of 3D points (e.g., points A′, B′ and C′ in FIG. 3B).A best-fit 3D plane is computed to these 3D points. The best-fit planewill appear to tilt towards the inputs having greater force.Mathematically, there is a direction and angle between the normal vectorof the best-fit 3D plane, and the normal of the screen (X-Y) plane(e.g., Z-axis), and this direction/angle specifies an incrementalrotation operation on the 3D object. In other words, a “tilt” transformis applied as an incremental rotation about the in-plane axis R thatmaps the Z-axis to n. Preferably, to ensure that n is well-defined, aset of weak constraint points k are included around the circularboundary of the control with depth equal to zero.

FIGS. 3A and 3B show three inputs (e.g., three fingers contacting theinput device). However, as mentioned above, the user may employ adifferent number of fingers (i.e., inputs or elements). For example, theuser may press the input device with five fingers of a hand, as shown inFIG. 2A. Regardless of whether three inputs are employed, five inputs,or another number of inputs, if the fingers (inputs) that are touchingthe right side of the 3D object are pressed harder than the otherfingers, the object is controlled to tumble left-to-right. As anotherexample, if only a single finger is pressing harder on the left side ofthe 3D object, the object is controlled to tumble right-to-left. Forconsistency, solution parameters are adjusted when input points areadded or removed, that is, when more or less fingers contact thedisplay, in order to maintain a constant transformation.

As a particularly useful feature of the present invention, rotationpreferably is engaged only when the forces on all inputs exceed apredetermined “deadband” threshold, thus preventing unintended rotationduring other movement control of the 3D object (e.g., panning, zooming,rotating about the Z plane).

The above-described 3D object movement/scaling/rotation controltechniques combine isotonic controlled rotation (along the input plane)with isometric controlled tilt (about a variable axis r). The presentinvention further entails 3D object movement/scaling/rotation controlwithout employing pressure measurement, as described below.

3D object movement/scaling/rotation control in accordance with anotherembodiment of the present invention entails usage of a first set ofinputs (e.g., inputs A and B shown in FIG. 4A), temporally followed by athird input (e.g., input C), where the 3D object rotates about axis Rduring the existence of input C, and axis R is defined as being embeddedwithin the XY plane and whose angle within that plane is specified bythe positions of A and B. Thus, the amount of rotation is a function ofthe amount of time input C is received. Preferably, input C's locationis within a suitable control area (e.g., within a predetermined distancefrom the other inputs) so to prevent rotation by inputs relativelyremote from inputs A and B. The rate of rotation may be constant (e.g.,angularly) or progressively increases while input C is received. In anycase, the axis R can be continuously adjusted by the user during therotation operation by moving the positions of inputs A and B.

The direction (clockwise or counterclockwise) of rotation about the axisR may be controlled by input C's position relative to A's and B'spositions. In one variation, an input C to the right (or above) linesegment A-B causes the 3D object to rotate in one direction, while aninput C to the left (or below) line segment A-B causes the 3D object torotate in the opposite direction. In another variation, the relativedistance of input C to line segment A-B designates tilt direction.Different control areas may be designated visually upon receipt ofinputs A and B, assisting the user as to the appropriate locations whereinput C may be received to initiate rotation in one direction orrotation in the opposite direction, as shown in FIG. 4B. In yet afurther variation, tilt direction is controlled by a fourth input (e.g.,a fourth finger of the user's hand, or on the other hand), with thepresence/absence of the fourth input or the particular location of thefourth input designating rotation direction.

In certain embodiments described herein, rotation is controlled bysensing additional pressure. In other embodiments, rotation iscontrolled by the duration of an input.

Rotation further may be controlled by utilizing input motioninformation. In particular, 3D object movement/scaling/rotation controlin accordance with a further embodiment of the invention entails inputsA, B and C, with the new position of input C′ relative to originalposition C designating the amount of rotation about axis r, defined byline segment AB That is, as input C moves closer or further away fromline segment AB, the amount of rotation about axis R changes. Thedirection and magnitude of rotation is dependent on the direction andlength of C-C′. The direction and length of the component of C-C′ thatis perpendicular to AB may also only be used to control direction andmagnitude of rotation. During one-handed implementation, a user may optto utilize his/her thumb and middle finger as inputs A and B,respectively, and the index finger as input C. Of course, other fingercombinations may be employed, as well as multi-hand utilization.

3D Globe View Control

While it is possible to navigate a 3D representation of the earth orother sphere-like body with a standard 6-DOF camera model (x, y, zposition, and 3-axis orientation), the present invention providesvarious methods and techniques that advantageously enable users to moreeasily and intuitively navigate a globe. As used herein, the term“globe” shall include the earth or other orbital body, or othersphere-like or somewhat-sphere-like structure or body.

As further described herein, navigation of a globe in accordance withthe present invention entails the following components: a 2degree-of-freedom (“2 DOF”) point of interest (POI) coordinate in unitssuch as latitude and longitude, a distance (or range) to that point ofinterest, an azimuth angle (e.g., angle from north), and a tilt angle(e.g., angle from the surface normal), for a total of 5degrees-of-freedom. Preferably, a roll angle is not included, as it isgenerally not useful for observing subjects on the surface of the globe,as humans naturally assume that the horizon is always horizontal, and itcan be very disorienting to the user when it is not.

As is appreciated, while the herein described 5 DOF globe navigationprocess seemingly does not have the full flexibility of the 6-DOFfree-space camera model, a reduction in the freedom of the cameraprovides various benefits to users, including ease of use and reductionin camera control distractions, as described herein.

In currently available systems and techniques, a user utilizes acomputer mouse to provide for two-degrees of freedom of information, forexample, to change the two parameters relating to POI coordinates. Inorder for the user to adjust another parameter, such as range, azimuth,or tilt, the user selects another tool or holds down another key (a“modifier key” such as Control or Shift) to indicate that the mouseshould now manipulate an alternate set. Not only is such mode switchingcumbersome, but it is impossible to simultaneously adjust more than anytwo at a time, forcing the user to decompose a view manipulation into asequence of individual operations.

In accordance with the present invention, more that one set of 2Dcoordinates may be input at a time employing a multi-point input device,thus permitting more advanced ways of controlling the view of the globethan currently available.

In accordance with particular embodiments of the present invention, PZRcontrol is applied to four of the five degrees of freedom of 3D globenavigation (latitude, longitude, range, azimuth, tilt). In particular,the four DOFs that correspond to PZR control are: 2D translation alongthe surface of the sphere (i.e., latitude, longitude); distance change(range); and rotation around the surface normal, more generally known inmapping as the “azimuth” angle. As used herein, the term “PZR-Globe”refers to such PZR control. But, however, as is appreciated, PZR-Globecontrol of the present invention does not have a one-to-onecorrespondence, that is, pure translation along the surface of thesphere may also cause a change in azimuth (e.g., if measured relative tothe north pole of the globe). A quaternion representation of globeorientation may be used as an intermediary to perform these view changesrobustly. Translation is preferably performed to visually correspond tothe motion on the display screen plane.

Tilt, the fifth of the four degrees of freedom discussed above, inaccordance with the present invention, is controlled by utilizing athird input. Referring to FIG. 5, the user makes contact with the inputdevice (e.g., touches the multi-point input display) with a third inputC (e.g., with a third finger) after the first two inputs A and B, andmovement (or sliding) of the third input to a different position C′operates to control globe tilt. In one variation of the invention, tiltangle is a function of the vertical distance between the initial andfinal positions of the third input. In a variation, a rate of tiltrotation is a function of the distance traveled by the third input. Ineither of these variations, the tilt function may employ a minimumthreshold distance away from the cluster of inputs used for PZR-Globecontrol, thus requiring the third input to be a set minimum distanceaway from the other inputs to control tilt.

PZR-Globe control and tilt control, in accordance with the invention,may be implemented with fingers from the same hand (e.g., thumb, index,middle), or with fingers from both hands. For example, the thumb andindex finger of one hand provides PZR-Globe control, with the indexfinger of the other hand controlling tilt. Whether one or two hands areemployed to carry out PZR-globe control and tilt control, all 5 degreesof freedom can be controlled simultaneously.

Referring to FIG. 6A, in accordance with another embodiment of thepresent invention, the user provides first and second inputs A and B(e.g., two finger contact) horizontally on the input device andmaintains these two inputs in stationary positions, so that no PZR-Globecontrol is carried out. Upon receipt of the two inputs, a virtual axisis defined as the horizontal line on the input device contact surfaceextending between the two inputs A and B. The user effects a tilt byinitiating a third input C on the input device surface, where directionand magnitude of tilt adjustment is a function of the distance d betweenthe third input C and the virtual axis, as shown in FIG. 6B. Forexample, if input C is above and relatively far away from the virtualaxis, the globe is controlled to tilt away from the vertical at arelatively quick rate. As another example, if input C is below andrelatively close to the virtual axis, the view tilts towards thevertical at a relatively slow rate. In an alternative embodiment, ratherthan utilizing the third input's distance from the virtual axis, themagnitude of tilt rotation is a function of the force of the thirdinput.

Various embodiments for interfacing with multi-point input devices havebeen described. The present invention also encompasses a system capableof carrying out the various interfacing techniques and processesdescribed herein. For example, FIG. 7 is a block diagram of amulti-point input system 20 that includes a display device 30 coupled toa controller 40. Display device 30 includes a display surface (alsocalled contact surface) and may be any suitable type of multi-pointinput display device capable of detecting multiple inputssimultaneously. Various suitable multi-input display devices that may beemployed include those described in U.S. patent application Ser. No.11/833,908, which is incorporated herein by reference. Controller 40operates to carry out the various processing functions described herein,and may be a pre-programmed general purpose computer or other knownsystem or device that carries out the novel functions/steps aspreviously described. Controllers suitable for use within the presentinvention are well known, and it is within the abilities of one ofordinary skill in the art to design and/or program a controller toimplement the processes, techniques and features of the presentinvention, given the description provided herein. Accordingly, thepresent invention encompasses a system that includes a display deviceand a controller capable of implementing the above-described techniquesand processes. Consistent with other variations described herein,display device 30 may include a multi-point input device and, as aseparate element, a display device.

The present invention has been described in the context of a number ofembodiments, and for various ones of those embodiments, a number ofvariations and examples thereof. It is to be understood, however, thatother expedients known to those skilled in the art or disclosed hereinmay be employed without departing from the spirit of the invention.

Therefore, it is intended that the appended claims be interpreted asincluding the embodiments described herein, the alternatives mentionedabove, and all equivalents thereto.

1. A method of interfacing with a multi-point input device, comprisingthe steps of: displaying an image on a display device; detectingpositions of first and second elements simultaneously contacting thedisplay device; identifying a rotation axis in accordance with thepositions of the first and second elements; detecting a third elementcontacting the display device simultaneously with the contacting of thedisplay device by the first and second elements; and controlling, afterdetecting the third element, a rotation of the image displayed on thedisplay device about the rotation axis.
 2. The method of claim 1,wherein detecting the third element contacting the display device occursafter the first and second elements are detected.
 3. The method of claim1, wherein identifying a rotation axis comprises identifying a rotationaxis extending through the positions of the first and second elementsparallel to a plane substantially corresponding to a display surface ofthe display device on which the image is displayed.
 4. The method ofclaim 1, wherein controlling a rotation of the image comprisescontrolling an amount of rotation as a function of an amount of time thethird element is detected.
 5. The method of claim 1, wherein controllinga rotation of the image comprises controlling, after detecting the thirdelement within a control area, a rotation of the image displayed on thedisplay device, the control area being defined by positions of the firstand second elements.
 6. The method of claim 1, wherein controlling arotation of the image comprises controlling a rotation of the image at aconstant rate while the third element is detected.
 7. The method ofclaim 1, wherein controlling a rotation of the image comprisescontrolling a rotation of the image at a progressively increasing ratewhile the third element is continuously detected.
 8. The method of claim1, wherein controlling a rotation of the image comprises controlling arotation of the image in a direction that is a function of a position ofthe third element.
 9. The method of claim 1, wherein controlling arotation of the image comprises controlling a rotation of the image in afirst direction when the third element is disposed on a first side of anaxis passing through the first and second elements; and controlling therotation of the image in a second direction opposite the first directionwhen the third element is disposed on a second side opposite the firstside of the axis passing through the first and second elements.
 10. Themethod of claim 1, further comprising detecting a fourth elementcontacting the display device simultaneously with the contacting of thedisplay device by the first, second and third elements; and whereincontrolling a rotation of the image displayed on the display devicecomprises controlling, after detecting the third element, a rotation ofthe image in a direction corresponding to a position of the fourthelement.
 11. The method of claim 1, further comprising identifying anamount of pressure exerted by the third element on the display device;and wherein controlling a rotation of the image comprises controlling arotation of the image in accordance with the amount of pressure exertedby the third element.
 12. The method of claim 1, wherein controlling arotation of the image comprises controlling a rotation of the image inaccordance with an amount of movement of the third element whilecontacting the display device.
 13. The method of claim 12, whereincontrolling a rotation of the image comprises controlling a directionand rate of rotation of the image as a function of a direction andlength of movement of the third element while contacting the displaydevice.
 14. A method of interfacing with a multi-point input device,comprising the steps of: displaying an image on a display device;detecting positions of first and second elements simultaneouslycontacting a contact surface of the multi-point input device;identifying a rotation axis of the image in accordance with thepositions of the first and second elements; detecting a third elementcontacting the contact surface of the multi-point input devicesimultaneously with the contacting of the contact surface by the firstand second elements; and controlling, after detecting the third element,a rotation of the image displayed on the display device about therotation axis.
 15. A multi-point input system, comprising: a displaydevice for displaying an image, the display device adapted to detectpositions of first and second elements simultaneously contacting thedisplay device and to detect a third element contacting the displaydevice simultaneously with the contacting of the display device by thefirst and second elements; and a controller for identifying a rotationaxis in accordance with the positions of the first and second elements,and controlling, after the third element is detected, a rotation of theimage displayed on the display device about the rotation axis.
 16. Themulti-point input system of claim 15, wherein the display device detectsthe third element contacting the display device after the first andsecond elements are detected.
 17. The multi-point input system of claim15, wherein the controller identifies a rotation axis extending throughthe positions of the first and second elements parallel to a planesubstantially corresponding to a display surface of the display deviceon which the image is displayed.
 18. The multi-point input system ofclaim 15, wherein the controller controls an amount of rotation as afunction of an amount of time the third element is detected.
 19. Themulti-point input system of claim 15, wherein the controller controls,after detecting the third element within a control area, a rotation ofthe image displayed on the display device, the control area beingdefined by positions of the first and second elements.
 20. Themulti-point input system of claim 15, wherein the controller controls arotation of the image at a constant rate while the third element isdetected.
 21. The multi-point input system of claim 15, wherein thecontroller controls a rotation of the image at a progressivelyincreasing rate while the third element is continuously detected. 22.The multi-point input system of claim 15, wherein the controllercontrols a rotation of the image in a direction that is a function of aposition of the third element.
 23. The multi-point input system of claim15, wherein the controls a rotation of the image in a first directionwhen the third element is disposed on a first side of an axis passingthrough the first and second elements, and controls the rotation of theimage in a second direction opposite the first direction when the thirdelement is disposed on a second side opposite the first side of the axispassing through the first and second elements.
 24. The multi-point inputsystem of claim 15, wherein the display device detects a fourth elementcontacting the display device simultaneously with the contacting of thedisplay device by the first, second and third elements; and wherein thecontroller controls, after detecting the third element, a rotation ofthe image in a direction corresponding to a position of the fourthelement.
 25. The multi-point input system of claim 15, wherein thecontroller identifies an amount of pressure exerted by the third elementon the display device, and controls a rotation of the image inaccordance with the amount of pressure exerted by the third element. 26.The multi-point input system of claim 15, wherein the controllercontrols a rotation of the image in accordance with an amount ofmovement of the third element while contacting the display device. 27.The multi-point input system of claim 26, wherein the controllercontrols a direction and rate of rotation of the image as a function ofa direction and length of movement of the third element while contactingthe display device.
 28. A multi-point input system, comprising: adisplay device for displaying an image; a multi-point input devicehaving a contact surface, the multi-point input device adapted to detectpositions of first and second elements simultaneously contacting thecontact surface and to detect a third element contacting the contactsurface simultaneously with the contacting of the contact surface by thefirst and second elements; and a controller for identifying a rotationaxis of the image in accordance with the positions of the first andsecond elements, and controlling, after the third element is detected, arotation of the image displayed by the display device about the rotationaxis.
 29. A method of interfacing with a multi-point input device,comprising the steps of: displaying an image on a display device, theimage representing a three-dimensional graphical representation of aglobe; detecting positions and movements of first and second elementssimultaneously contacting the display device; controlling a change inthe image corresponding to a change in a view of the globe resultingfrom a change in at least one of latitude, longitude, range and azimuthof the view in accordance with the detected movements of the first andsecond elements simultaneously contacting the display device; detectinga position and movement of a third element contacting the display devicesimultaneously with the contacting of the display device by the firstand second elements; and controlling a change in the image correspondingto a change in a tilt of the globe in accordance with the detectedmovement of the third element contacting the display device.
 30. Themethod of claim 29, wherein controlling a change in the imagecorresponding to a change in a view of the globe comprises controlling achange in the image corresponding to changes in all of latitude,longitude, range and azimuth in accordance with the detected movementsof the first and second elements simultaneously contacting the displaydevice.
 31. The method of claim 30, wherein controlling a change in theimage corresponding to a change in a tilt of the globe is carried outsimultaneously with the change in the image corresponding to changes inall of the latitude, longitude, range and azimuth of the globe.
 32. Themethod of claim 29, wherein controlling a change in the imagecorresponding to a change in a tilt of the globe comprises controlling achange in the image corresponding to a change in a tilt of the globe ata tilt angle that is a function of a vertical distance moved by thethird element while contacting the display device.
 33. The method ofclaim 29, wherein controlling a change in the image corresponding to achange in a tilt of the globe comprises controlling a change in theimage corresponding to a change in a tilt of the globe at a rate ofrotation that is a function of a distance moved by the third elementwhile contacting the display device.
 34. The method of claim 29, whereincontrolling a change in the image corresponding to a change in a tilt ofthe globe is carried out only if an initial position of the thirdelement contacting the display device is at least a predetermineddistance away from the positions of the first and second elements.
 35. Amethod of interfacing with a multi-point input device, comprising thesteps of: displaying an image on a display device, the imagerepresenting a three-dimensional graphical representation of a globe;detecting positions and movements of first and second elementssimultaneously contacting a contact surface of a multi-point inputdevice; controlling a change in the image displayed on the displaydevice corresponding to a change in a view of the globe resulting from achange in at least one of latitude, longitude, range and azimuth of theview in accordance with the detected movements of the first and secondelements simultaneously contacting the contact surface of themulti-point input device; detecting a position and movement of a thirdelement contacting the contact surface of the multi-point input devicesimultaneously with the contacting of the contact surface by the firstand second elements; and controlling a change in the image displayed onthe display device corresponding to a change in a tilt of the globe inaccordance with the detected movement of the third element contactingthe contact surface.
 36. A multi-point input system, comprising: adisplay device for displaying an image representing a three-dimensionalgraphical representation of a globe; and a controller for detectingpositions and movements of first and second elements simultaneouslycontacting the display device, controlling a change in the imagecorresponding to a change in a view of the globe resulting from a changein at least one of latitude, longitude, range and azimuth of the view inaccordance with the detected movements of the first and second elementssimultaneously contacting the display device, detecting a position andmovement of a third element contacting the display device simultaneouslywith the contacting of the display device by the first and secondelements, and controlling a change in the image corresponding to achange in a tilt of the globe in accordance with the detected movementof the third element contacting the display device.
 37. The multi-pointinput system of claim 36, wherein the controller controls a change inthe image corresponding to changes in all of latitude, longitude, rangeand azimuth in accordance with the detected movements of the first andsecond elements simultaneously contacting the display device.
 38. Themulti-point input system of claim 37, wherein the controller controls achange in the image corresponding to a change in a tilt of the globesimultaneously with the change in the image corresponding to changes inall of the latitude, longitude, range and azimuth of the globe.
 39. Themulti-point input system of claim 36, wherein the controller controls achange in the image corresponding to a change in a tilt of the globe ata tilt angle that is a function of a vertical distance moved by thethird element while contacting the display device.
 40. The multi-pointinput system of claim 36, wherein the controller controls a change inthe image corresponding to a change in a tilt of the globe at a rate ofrotation that is a function of a distance moved by the third elementwhile contacting the display device.
 41. The multi-point input system ofclaim 36, wherein the controller controls a change in the imagecorresponding to a change in a tilt of the globe only if an initialposition of the third element contacting the display device is at leasta predetermined distance away from the positions of the first and secondelements.
 42. A multi-point input system, comprising: a display devicefor displaying an image representing a three-dimensional graphicalrepresentation of a globe; a multi-point input device having a contactsurface, the multi-point input device adapted to detect positions andmovements of first, second and third elements simultaneously contactingthe contact surface; and a controller for controlling a change in theimage displayed by the display device corresponding to a change in aview of the globe resulting from a change in at least one of latitude,longitude, range and azimuth of the view in accordance with the detectedmovements of the first and second elements simultaneously contacting thecontact surface of the multi-point input device, and for controlling achange in the image displayed by the display device corresponding to achange in a tilt of the globe in accordance with the detected movementof the third element contacting the contact surface of the multi-pointinput device.
 43. A method of interfacing with a multi-point inputdevice, comprising the steps of: displaying an image on a displaydevice, the image representing a three-dimensional graphicalrepresentation of a globe; detecting positions of first and secondelements simultaneously contacting the display device; identifying avirtual axis in accordance with the positions of the first and secondelements; detecting a third element contacting the display devicesimultaneously with the contacting of the display device by the firstand second elements; and controlling, after detecting the third element,a tilt adjustment of the globe represented by the image displayed on thedisplay device in accordance with the virtual axis and the position ofthe third element.
 44. The method of claim 43, wherein controlling atilt adjustment comprises controlling a magnitude of tilt adjustment ofthe globe represented by the image displayed on the display device as afunction of a distance between the position of the third element and thevirtual axis.
 45. The method of claim 43, wherein controlling a tiltadjustment comprises controlling a direction of tilt adjustment of theglobe represented by the image displayed on the display device in afirst direction when the third element is disposed on a first side ofthe virtual axis and in a second direction opposite the first directionwhen the third element is disposed on a second side of the virtual axisopposite the first side.
 46. The method of claim 43, further comprisingascertaining an amount of pressure exerted by the third element on thedisplay device; and wherein controlling a tilt adjustment comprisescontrolling a tilt adjustment of the globe represented by the imagedisplayed on the display device in accordance with the ascertainedamount of pressure exerted by the third element.
 47. A method ofinterfacing with a multi-point input device, comprising the steps of:displaying an image on a display device, the image representing athree-dimensional graphical representation of a globe; detectingpositions of first and second elements simultaneously contacting acontact surface of a multi-point input device; identifying a virtualaxis in accordance with the positions of the first and second elementson the contact surface of the multi-point input device; detecting athird element contacting the contact surface of the multi-point inputdevice simultaneously with the contacting of the contact surface by thefirst and second elements; and controlling, after detecting the thirdelement, a tilt adjustment of the globe represented by the imagedisplayed on the display device in accordance with the virtual axis andthe position of the third element on the contact surface of themulti-point input device.
 48. A multi-point input system, comprising: adisplay device for displaying an image representing a three-dimensionalgraphical representation of a globe; and a controller for detectingpositions of first and second elements simultaneously contacting thedisplay device, identifying a virtual axis in accordance with thepositions of the first and second elements, detecting a third elementcontacting the display device simultaneously with the contacting of thedisplay device by the first and second elements, and controlling, afterdetecting the third element, a tilt adjustment of the globe representedby the image displayed on the display device in accordance with thevirtual axis and the position of the third element.
 49. The multi-pointinput system of claim 48, wherein the controller controls a magnitude oftilt adjustment of the globe represented by the image displayed on thedisplay device as a function of a distance between the position of thethird element and the virtual axis.
 50. The multi-point input system ofclaim 48, wherein the controller controls a direction of tilt adjustmentof the globe represented by the image displayed on the display device ina first direction when the third element is disposed on a first side ofthe virtual axis and in a second direction opposite the first directionwhen the third element is disposed on a second side of the virtual axisopposite the first side.
 51. The multi-point input system of claim 48,wherein the controller ascertains an amount of pressure exerted by thethird element on the display device, and controls a tilt adjustment ofthe globe represented by the image displayed on the display device inaccordance with the ascertained amount of pressure exerted by the thirdelement.
 52. A multi-point input system, comprising: a display devicefor displaying an image representing a three-dimensional graphicalrepresentation of a globe; a multi-point input device having a contactsurface, the multi-point input device adapted to detect positions offirst, second and third elements simultaneously contacting the contactsurface; and a controller for identifying a virtual axis in accordancewith the positions of the first and second elements on the contactsurface of the multi-point input device; and controlling, after thethird element is detected, a tilt adjustment of the globe represented bythe image displayed on the display device in accordance with the virtualaxis and the position of the third element on the contact surface of themulti-point input device.